The present invention relates to methods, systems and computer programs for improving the read performance on storage systems with Hard Disk Drives (HDD).
Currently, HDD based Input/Output (IO) performance is limited, especially in random read situations. Sequential reads can be served out of a dynamic RAM (DRAM) based cache associated with the HDD through prefetching, which can be performed on parallel streams. Both random and sequential write performance are improved by the use of caches, such as DRAM caches. Caches absorb a number of write IOs and HDDs can be used effectively independently from the IO depth.
Random reads typically can't be served out of the cache and HDD head strokes (reads) are required to access the data on the storage media. Additionally, the effective use of HDDs depends on the IO queue depth (at a queue depth of one the random read performance is equal to the random read performance of one drive.)
It is in this context that embodiments of the invention arise.